package com.learn;

/**
 * 给你一个字符串 s，由若干单词组成，单词前后用一些空格字符隔开。返回字符串中最后一个单词的长度。
 * <p>
 * 单词 是指仅由字母组成、不包含任何空格字符的最大子字符串。
 */
public class num_58 {
    public static int lengthOfLastWordMyself(String s) {
        String[] split = s.split(" ");
        String lastString = split[split.length - 1];
        int length = lastString.toCharArray().length;
        return length;
    }

    public static int lengthOfLastWord(String s) {
        //取得字符串的长度
        int index = s.length() - 1;
        //判断末尾是否有空格
        while (s.charAt(index) == ' ') {
            index--;
        }
        //输入长度判定
        int wordLength = 0;
        //当字符串不为空，且没有遇到第一个空格时
        while (index >= 0 && s.charAt(index) != ' ') {
            //计算单词长度，指针后移
            wordLength++;
            index--;
        }
        return wordLength;
    }

    public static void main(String[] args) {
        String s="Hello World";
        String s1="   fly me   to   the moon  ";
        lengthOfLastWord(s);
        lengthOfLastWord(s1);
    }
}
